Lab 5: Loops
A simple diagram of the flow of a loop | |
A more engaging example of a loop in action | [From the Pixar short: Bao] |
Table of Contents
Big Questions
-
If you want a while loop to stop when one of several conditions is met, how should you write the continuation condition??
Show Answer
In this case, you'd want to continue the loop as long as ALL of the conditions are NOT met, and stop as soon as ANY of them is met. So you can reverse each individual condition usingnot
, and then combine them usingand
. For example, if you want to stop a loop when either 5 turns have passed or the user guesses correct, you could write:while turns < 5 and guess != answer: ...
That condition would become False (stopping the loop) as soon asturns
became 5, or as soon as the guess was equal to the answer, whichever happened first. - What happens when you use
return
inside a loop, and why might you want to do that?Show Answer
As always, if you usereturn
inside a loop, the current function ends, which also exits the loop. You can use this to your advantage to end the loop early if you are looking for something and you find it (for example, does a string contain a certain letter: after you see that letter, you don't need to continue the loop; you can immediately return True). However, you have to be careful: in some cases, you need to process or check each item in your sequence, and an early return would prevent this (for example, finding how many copies of a certain letter a string contains; in this case, we need to check each letter, and cannot return early).